package com.teach_sys.dao;

import com.teach_sys.bean.Course;

import java.util.List;

public class CourseDao extends BaseDao {
    /**
     * 向数据库Course中添加一条记录
     *
     * @param course 要添加的数据
     * @return 新增的行数，同BaseDao
     */
    public int addCourse(Course course) {
        String sql = "insert into course(Cno,Cname,Cpno,Ccredit) values(?,?,?,?)";
        return update(sql, course.getCno(), course.getCname(), course.getCpno(), course.getCcredit());
    }

    /**
     * 向数据库Course中删除一条记录
     *
     * @param cno 要删除的记录的Cno
     * @return 删除的行数，同BaseDao
     */
    public int deleteCourseByCno(String cno) {
        String sql = "delete from course where Cno = ?";
        return update(sql, cno);
    }

    /**
     * 更新数据库Course中一条记录
     *
     * @param course 要更新的数据
     * @return 更新的行数，同BaseDao
     */
    public int updateCourse(Course course) {
        String sql = "update course set Cname=?,Cpno=?,Ccredit=? where Cno=?";
        return update(sql, course.getCname(), course.getCpno(), course.getCcredit(), course.getCno());
    }

    /**
     * 通过Cno查询一条记录
     *
     * @param cno Cno
     * @return 查询结果
     */
    public List<Course> queryCourseByCno(String cno) {
        String sql = "select * from course where Cno=?";
        return queryForList(Course.class, sql, cno);
    }

    /**
     * 通过Cname查询一条记录
     *
     * @param cname Cname
     * @return 查询结果
     */
    public List<Course> queryCourseByCname(String cname) {
        String sql = "select * from course where Cname=?";
        return queryForList(Course.class, sql, cname);
    }

    /**
     * 查询全部记录
     *
     * @return 查询结果
     */
    public List<Course> queryAllCourse() {
        String sql = "select * from course";
        return queryForList(Course.class, sql);
    }
}
